Sponsored Content
Top Forums Programming getting Segmentation Fault (core dumped) error but Program runs fine. Post 302465329 by Praveen_218 on Friday 22nd of October 2010 07:28:23 AM
Old 10-22-2010
There are exactly 7 locations in your code, which could get the segmentation faults:

1)
Two locations at the code below:

Code:
	str [j][i]='\0';                                                        
	printf("string=%s\n", str[j]);

Reason: Your decleration for str
Code:
      char str[1][624];

Gives you only 1 column of 624 character locations; should be accessible in the code only at the zeroth row location only, like [I]str[0].

Soln: Either make sure that the value of J is not more than 0 and check for
Code:
if(1 == J) break;

//instead of the below;

if(j ==2)
          break;

or declare str like the following
Code:
char str[3][624];

This way you'd not get seg-11 at either of the 2 locations, described above.

2)
Five locations at the following code segments:
Code:
free(str);                                                               
free(c);                                                                 
free(i);                                                                 
free(j);                                                                 
free(flag);

Reason:
You should use free() only on pointers, you explitly declared and defined in your program. That too, only when these pointers are pointing to a valid memory locations on the heap area of your program. Primarily once for every explicit call to malloc(), realloc(), calloc() only, however, sometimes you get a memory allocated through library function calls or some systems call (like stat()) for eg, but here too, such functions require you to pass a validly defined pointers to them.

You should NEVER call free() on any other things. Here you have called free() over a number of datatypes (which contain some numeric values which gets type casted implicitly to pointers to a memory locations which is definitely out of range of your process memory area. Hence getting segmentation faults.

Soln:
Remove the call to free() you do not require them in your program.

Cheers Smilie

Last edited by Praveen_218; 10-22-2010 at 08:42 AM.. Reason: Typo spelling errors :)
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Segmentation fault (core dumped)

Hello To All! Now anfd then I receive a message on my console: Segmentation fault (core dumped) What does it mean? Or more precisely what are the implications? :confused: (1 Reply)
Discussion started by: Ivo
1 Replies

2. Programming

Segmentation Fault (core dumped)

what r the situations to receive an error msg like the one below Segmentation Fault (core dumped) (2 Replies)
Discussion started by: bankpro
2 Replies

3. Solaris

Segmentation Fault (core dumped)

i am getting Segmentation Fault (core dumped) on solaris, but when i run the same program with same input on linux it runs successfully. How can i trace the fault in program on solaris. (6 Replies)
Discussion started by: junaid.nehvi
6 Replies

4. Solaris

segmentation fault core dumped

i am getting segmentation fault (core dumped) i tried following things but couldn't understand what is wrong with my prog and where the problem is.... i have only adb debugger available on solaris.... so plz help bash-3.00$ pstack core core 'core' of 765: ./mod_generalised_tapinread... (4 Replies)
Discussion started by: junaid.nehvi
4 Replies

5. Red Hat

Segmentation fault (core dumped)

Hi All, I am getting "Segmentation fault (core dumped)" error in the runtime. I am new this please can you tell me why is that i am getting this error and I am not sure of my compilation : gcc -c avc_test.c gcc -c md5.c gcc avc_test.o md5.o -shared -Llibcoreavc_sdk.so -o proj ... (1 Reply)
Discussion started by: fido.genial
1 Replies

6. Shell Programming and Scripting

Segmentation Fault(Core Dump) Error

Hi all, I have a folder with some 28 files. I have a script file that will iteratively take one file at a time from the folder and provide an output for the input file. Till the 7th file, there was no problem but from the 8th file onwards, i got this Segmentation Fault(Core Dump) error. A file... (2 Replies)
Discussion started by: mick_000
2 Replies

7. Programming

Memory Fault (core dumped) in ttpy program

I´m writing this program in QNX , I`m kinda new to UNIX and programing in general, and when I try to run it it gives me the Memory Fault error. Can anyone help? #include <stdio.h> #include <fcntl.h> void main(void) {int a,ter; char buf; printf("a="); scanf("%d",a); ter=open... (6 Replies)
Discussion started by: GiganteAsesino
6 Replies

8. UNIX for Advanced & Expert Users

Segmentation Fault/ core dumped in metadb

When I was trying to mirror in my v880 server after OS up gradation from 8 to 10 metadb -afc 3 /dev/dsk/c1t1d0s7 I got an error metadb: Segmentation Fault Segmentation Fault (core dumped) Then I logged a case to Oracle/sun team they suggest "Please could you try metadb -ac 3... (0 Replies)
Discussion started by: taherahmed
0 Replies

9. UNIX and Linux Applications

Tilda Segmentation fault (core dumped)

Can anyone tell me why I keep getting a Segmentation fault when I try to run tilda? $ tilda Segmentation fault (core dumped) It seemed to run after I deleted my tilda directory like this thread said to do. Unfortunately it wouldn't let me set my keybinding with anything I tried. ... (0 Replies)
Discussion started by: cokedude
0 Replies

10. UNIX for Dummies Questions & Answers

Find a string across line break (because of "segmentation fault core dumped")

Hi, thanks to a precedent post, and thanks to the reply of derekludwig of the forum, I have convert my first awk command as : test.txt is : AAAAAGHIJKLAjKMEFJKLjklABCDJkLEFGHIJKL awk -f findstring.awk test.txt > textreturn.txtfindstring.awk is : BEGIN{ SLENGTH = 3 } { ... (3 Replies)
Discussion started by: thewizarde6
3 Replies
hx509 name functions(3) 					Heimdalx509library					   hx509 name functions(3)

NAME
hx509 name functions - Functions int hx509_name_to_string (const hx509_name name, char **str) int hx509_name_cmp (hx509_name n1, hx509_name n2) int hx509_parse_name (hx509_context context, const char *str, hx509_name *name) int hx509_name_copy (hx509_context context, const hx509_name from, hx509_name *to) int hx509_name_to_Name (const hx509_name from, Name *to) int hx509_name_expand (hx509_context context, hx509_name name, hx509_env env) void hx509_name_free (hx509_name *name) int hx509_unparse_der_name (const void *data, size_t length, char **str) int hx509_name_binary (const hx509_name name, heim_octet_string *os) int hx509_name_is_null_p (const hx509_name name) int hx509_general_name_unparse (GeneralName *name, char **str) Detailed Description See the PKIX/X.509 Names for description and examples. Function Documentation int hx509_general_name_unparse (GeneralName * name, char ** str) Unparse the hx509 name in name into a string. Parameters: name the name to print str an allocated string returns the name in string form Returns: An hx509 error code, see hx509_get_error_string(). int hx509_name_binary (const hx509_name name, heim_octet_string * os) Convert a hx509_name object to DER encoded name. Parameters: name name to concert os data to a DER encoded name, free the resulting octet string with hx509_xfree(os->data). Returns: An hx509 error code, see hx509_get_error_string(). int hx509_name_cmp (hx509_name n1, hx509_name n2) Compare to hx509 name object, useful for sorting. Parameters: n1 a hx509 name object. n2 a hx509 name object. Returns: 0 the objects are the same, returns > 0 is n2 is 'larger' then n2, < 0 if n1 is 'smaller' then n2. int hx509_name_copy (hx509_context context, const hx509_name from, hx509_name * to) Copy a hx509 name object. Parameters: context A hx509 cotext. from the name to copy from to the name to copy to Returns: An hx509 error code, see hx509_get_error_string(). int hx509_name_expand (hx509_context context, hx509_name name, hx509_env env) Expands variables in the name using env. Variables are on the form ${name}. Useful when dealing with certificate templates. Parameters: context A hx509 cotext. name the name to expand. env environment variable to expand. Returns: An hx509 error code, see hx509_get_error_string(). Only UTF8String rdnSequence names are allowed void hx509_name_free (hx509_name * name) Free a hx509 name object, upond return *name will be NULL. Parameters: name a hx509 name object to be freed. int hx509_name_is_null_p (const hx509_name name) Unparse the hx509 name in name into a string. Parameters: name the name to check if its empty/null. Returns: non zero if the name is empty/null. int hx509_name_to_Name (const hx509_name from, Name * to) Convert a hx509_name into a Name. Parameters: from the name to copy from to the name to copy to Returns: An hx509 error code, see hx509_get_error_string(). int hx509_name_to_string (const hx509_name name, char ** str) Convert the hx509 name object into a printable string. The resulting string should be freed with free(). Parameters: name name to print str the string to return Returns: An hx509 error code, see hx509_get_error_string(). int hx509_parse_name (hx509_context context, const char * str, hx509_name * name) Parse a string into a hx509 name object. Parameters: context A hx509 context. str a string to parse. name the resulting object, NULL in case of error. Returns: An hx509 error code, see hx509_get_error_string(). int hx509_unparse_der_name (const void * data, size_t length, char ** str) Convert a DER encoded name info a string. Parameters: data data to a DER/BER encoded name length length of data str the resulting string, is NULL on failure. Returns: An hx509 error code, see hx509_get_error_string(). Version 1.5.2 11 Jan 2012 hx509 name functions(3)
All times are GMT -4. The time now is 05:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy